home *** CD-ROM | disk | FTP | other *** search
Wrap
;*************************************************************************** ;* * ;* S T R I N G S * ;* * ;*************************************************************************** (set #langfound 0) (if (= "deutsch" @language) ( (set #langfound 1) (set #MSG_OS3 "ReqAttack benötigt mindestens AmigaOS 3.0!") (set #MSG_README "\nSie sollten mit der Installation erst beginnen, wenn Sie \"README\" gelesen haben!") (set #MSG_README_NOW "Jetzt lesen!") (set #MSG_README_DONE "Schon getan!") (set #MSG_WHAT "Was soll installiert werden?") (set #MSG_WHAT_PROG "ReqAttack Programm") (set #MSG_WHAT_TOOLS "ReqAttack Tools") (set #MSG_WHAT_DOCS "Dokumentation") (set #MSG_WHAT_BUTTONS "Beispiele für Buttonicons") (set #MSG_WHAT_BRUSHES "Beispiele für Requesterlogos") (set #MSG_WHAT_ANIMBRUSHES "Beispiele für animierte Requesterlogos") (set #MSG_WHAT_PATTERNS "Beispiele für Requesterhintergründe") (set #MSG_WHAT_BRUSHDT "ReqAttack Brush Datatype") (set #MSG_WHAT_ANIMBRUSHDT "ReqAttack Animbrush Datatype") (set #MSG_WHAT_CYREQ "CyReq (klicken Sie auf \"Hilfe ...\")") (set #MSG_DEST "Wo soll ReqAttack installiert werden?\nEin Verzeichnis \"ReqAttack\" wird automatisch erzeugt, wenn nicht bereits vorhanden!") (set #MSG_RAPATH "Wo befindet sich das ReqAttack Verzeichnis auf Ihrer Festplatte?") (set #MSG_MAKEDIR "\nErzeuge ReqAttack Verzeichnis ...") (set #MSG_COPY_ICON "Kopiere Icon ...") (set #MSG_COPY_PROG "Kopiere Hauptprogramm ...") (set #MSG_COPY_CONFIG "Erzeuge Konfigurationsdatei in \"%s\" ...") (set #MSG_COPY_TOOLS "Kopiere Tools ...") (set #MSG_COPY_DOCS "Kopiere Dokumentation ...") (set #MSG_COPY_BUTTONS "Kopiere Buttonicons ...") (set #MSG_COPY_BRUSHES "Kopiere Requesterlogos ...") (set #MSG_COPY_ANIMBRUSHES "Kopiere animierte Requesterlogos ...") (set #MSG_COPY_PATTERNS "Kopiere Requesterhintergründe ...") (set #MSG_COPY_BRUSHDT "Kopiere ReqAttack Brush Datatype ...") (set #MSG_COPY_BRUSHDTDESC "Kopiere ReqAttack Brush Datatype Beschreibungsdatei ...") (set #MSG_COPY_ANIMBRUSHDT "Kopiere ReqAttack Animbrush Datatype ...") (set #MSG_COPY_ANIMBRUSHDTDESC "Kopiere ReqAttack Animbrush Datatype Beschreibungsdatei ...") (set #MSG_COPY_CYREQ "Kopiere CyReq ...") (set #MSG_DOCLANG "Die Dokumentation ist in mehreren Sprachen verfügbar. Wählen Sie die gewünschte Version!") (set #MSG_DOC_GERMAN "Deutsch") (set #MSG_DOC_ENGLISH "Englisch") (set #MSG_FA "Es wird nun ein Programm gestartet, mit dem Sie auswählen können, an welcher Stelle in der Startup-Sequence CyReq gestartet werden soll. Sie sollten die vorgeschlagene Position nur ändern, wenn Sie wirklich wissen, was Sie tun!") (set #MSG_FA2 "\n\nWenn Sie CyReq bereits in der Startup-Sequence haben, können Sie mit CONTROL + LINKER MAUSTASTE die entsprechenden Zeilen herauslöschen.\n\nVor dem Speichern der geänderten Startup-Sequence wird ein Backup davon gemacht!") (set #MSG_HELP_CYREQ "Wenn Sie Programme benützen, die bestimmte Requester ersetzen, wie zum Beispiel AssignWedge Utilities, dann sollten Sie CyReq installieren. Andernfalls verursacht ReqAttack durch seine Patches ") (set #MSG_HELP_CYREQ2 "eine indirekte Deaktivierung solcher Programme, es sei denn ReqAttack schafft es, seine Patches vor diesen Programmen zu aktivieren. Das Starten von CyReq erfolgt in der Startup-Sequence.\n\n") (set #MSG_HELP_CYREQ3 "CyReq sollte auch Crashes beim Beantworten von bestimmten Requestern auf einigen Systemen verhindern. Für mehr Informationen dazu siehe ReqAttack.guide -> Geschichte -> V 1.0!\n\n") (set #MSG_HELP_CYREQ4 "Dieses Installations-Skript erlaubt Ihnen mit Hilfe eines externen Programmes genau festzulegen, an welcher Stelle in der Startup-Sequence CyReq gestartet werden soll. ") (set #MSG_NOHELP "Es gibt keine Hilfe. Sorry!") (set #MSG_DONE "\nInstallation abgeschlossen!") ) ) (if (= 0 #langfound) ( (set #MSG_OS3 "ReqAttack at least needs AmigaOS 3.0!") (set #MSG_README "\nYou should start installation only after having read \"README\"!") (set #MSG_README_NOW "Read now!") (set #MSG_README_DONE "Already done!") (set #MSG_WHAT "What do you want to install?") (set #MSG_WHAT_PROG "ReqAttack program") (set #MSG_WHAT_TOOLS "ReqAttack tools") (set #MSG_WHAT_DOCS "Documentation") (set #MSG_WHAT_BUTTONS "Some example button images") (set #MSG_WHAT_BRUSHES "Some example requester logos") (set #MSG_WHAT_ANIMBRUSHES "Some example animated requester logos") (set #MSG_WHAT_PATTERNS "Some example requester background patterns") (set #MSG_WHAT_BRUSHDT "ReqAttack Brush Datatype") (set #MSG_WHAT_ANIMBRUSHDT "ReqAttack Animbrush Datatype") (set #MSG_WHAT_CYREQ "CyReq (click on \"Help...\")") (set #MSG_DEST "Where do you wish to install ReqAttack?\nA drawer called \"ReqAttack\" will be created automatically, if not already existing!") (set #MSG_RAPATH "Where on your hard disk is your ReqAttack directory?") (set #MSG_MAKEDIR "\nCreating ReqAttack directory ...") (set #MSG_COPY_ICON "Copying icon ...") (set #MSG_COPY_PROG "Copying main program ...") (set #MSG_COPY_CONFIG "Creating configuration file in \"%s\" ...") (set #MSG_COPY_TOOLS "Copying tools ...") (set #MSG_COPY_DOCS "Copying documentation ...") (set #MSG_COPY_BUTTONS "Copying button images ...") (set #MSG_COPY_BRUSHES "Copying requester logos ...") (set #MSG_COPY_ANIMBRUSHES "Copying animated requester logos ...") (set #MSG_COPY_PATTERNS "Copying requester background patterns ...") (set #MSG_COPY_BRUSHDT "Copying ReqAttack Brush Datatype ...") (set #MSG_COPY_BRUSHDTDESC "Copying ReqAttack Brush Datatype description file ...") (set #MSG_COPY_ANIMBRUSHDT "Copying ReqAttack Animbrush Datatype ...") (set #MSG_COPY_ANIMBRUSHDTDESC "Copying ReqAttack Animbrush Datatype description file ...") (set #MSG_COPY_CYREQ "Copying CyReq ...") (set #MSG_DOCLANG "The documentation is available in different languages. Choose the one you like!") (set #MSG_DOC_GERMAN "German") (set #MSG_DOC_ENGLISH "English") (set #MSG_FA "Now a program will be started that allows you to select at which position to insert CyReq in the Startup-Sequence. Change the predefined position only if you really know what you do!") (set #MSG_FA2 "\n\nIf CyReq is already in your Startup-Sequence you can delete the corresponding lines by using CONTROL + LEFT MOUSE BUTTON.\n\nBefore saving the changed Startup-Sequence a backup of it will be created!") (set #MSG_HELP_CYREQ "If you use programs which replace certain requesters - for example AssignWedge utilities - you should install CyReq. Otherwise ReqAttack because of its patches will cause ") (set #MSG_HELP_CYREQ2 "an indirect de-activation of such programs, unless ReqAttack manages to activate its patches before these other programs do. CyReq will be started in Startup-Sequence.\n\n") (set #MSG_HELP_CYREQ3 "CyReq can also prevent crashes when replying certain requesters on some systems. For more info see ReqAttack.guide -> History -> V 1.0!\n\n") (set #MSG_HELP_CYREQ4 "This installation script with the help of an external program allows you to exactly specify at which point CyReq shall be launched in the Startup-Sequence. ") (set #MSG_NOHELP "No help available. Sorry!") (set #MSG_DONE "\nInstallation complete!") ) ) ;*************************************************************************** ;* * ;* S T A R T * ;* * ;*************************************************************************** (set #WHAT_PROG 1) (set #WHAT_TOOLS 2) (set #WHAT_DOCS 4) (set #WHAT_BUTTONS 8) (set #WHAT_BRUSHES 16) (set #WHAT_ANIMBRUSHES 32) (set #WHAT_PATTERNS 64) (set #WHAT_BRUSHDT 128) (set #WHAT_ANIMBRUSHDT 256) (set #WHAT_CYREQ 512) (set #OSVERSION (/ (getversion) 65536)) (if (< #OSVERSION 39) (abort #MSG_OS3) ) (if (= 1 (askbool (prompt #MSG_README) (choices #MSG_README_NOW #MSG_README_DONE) (help #MSG_NOHELP) ) ) (run "multiview README") ) (if (= 1 (exists("S:ReqAttack.installinfo"))) (set #default_what (+ #WHAT_PROG #WHAT_TOOLS #WHAT_DOCS) ) (set #default_what (+ #WHAT_PROG #WHAT_TOOLS #WHAT_DOCS #WHAT_BUTTONS #WHAT_BRUSHES #WHAT_ANIMBRUSHES #WHAT_PATTERNS #WHAT_BRUSHDT #WHAT_ANIMBRUSHDT ) ) ) (if (= 1 (exists "C:CyReq")) (set #default_what (+ #default_what #WHAT_CYREQ)) ) (set #what (askoptions (prompt #MSG_WHAT) (choices #MSG_WHAT_PROG #MSG_WHAT_TOOLS #MSG_WHAT_DOCS #MSG_WHAT_BUTTONS #MSG_WHAT_BRUSHES #MSG_WHAT_ANIMBRUSHES #MSG_WHAT_PATTERNS #MSG_WHAT_BRUSHDT #MSG_WHAT_ANIMBRUSHDT #MSG_WHAT_CYREQ) (help #MSG_HELP_CYREQ #MSG_HELP_CYREQ2 #MSG_HELP_CYREQ3 #MSG_HELP_CYREQ4) (default #default_what) ) ) ;** Get or make ReqAttack directory ** (if (<> 0 (bitand #WHAT_PROG #what)) ( (set #defdir @default-dest) ;** See if older version exists ** (if (= 1 (exists "S:ReqAttack.installinfo")) ( (copyfiles (source "S:ReqAttack.installinfo") (dest "ENV:") (newname "ReqAttackInstallInfo") ) (set #envdefdir (getenv "ReqAttackInstallInfo")) (if (<> "" #envdefdir) (set #defdir (pathonly #envdefdir)) ) (delete "ENV:ReqAttackInstallInfo") ) ) (set #dest (expandpath (askdir (prompt #MSG_DEST) (help #MSG_NOHELP) (default #defdir) ) ) ) ;** Make directory if necessary ** (if (= 0 (exists (tackon #dest "ReqAttack"))) ( (makedir (tackon #dest "ReqAttack") (prompt #MSG_MAKEDIR) (help #MSG_NOHELP) (confirm) ) (copyfiles (prompt #MSG_COPY_ICON) (source "/ReqAttack.info") (dest #dest) (help #MSG_NOHELP) (confirm) ) (run ("installtools/noiconpos \"%s\"" (tackon #dest "ReqAttack"))) ) ) (set #dest (tackon #dest "ReqAttack")) (set @default-dest #dest) (textfile (dest "S:ReqAttack.installinfo") (append #dest) ) ) ( ;** if ReqAttack directory required try to retrieve it ;** from S:ReqAttack.installinfo or ask the user (if (<> 0 (bitand #what (+ #WHAT_TOOLS #WHAT_DOCS #WHAT_BUTTONS #WHAT_BRUSHES #WHAT_ANIMBRUSHES #WHAT_PATTERNS))) ( (set #ok 0) (set #dest @default-dest) (if (= 1 (exists "S:ReqAttack.installinfo")) ( (copyfiles (source "S:ReqAttack.installinfo") (dest "ENV:") (newname "ReqAttackInstallInfo") ) (set #dest (getenv "ReqAttackInstallInfo")) (set @default-dest #dest) (if (<> "" #dest) (set #ok 1) ) (delete "ENV:ReqAttackInstallInfo") ) ) (while (= 0 #ok) ( (set #dest (expandpath (askdir (prompt #MSG_RAPATH) (help #MSG_NOHELP) (default #dest) ) ) ) (if (= 2 (exists (tackon #dest "ReqAttack"))) ( (set #dest (tackon #dest "ReqAttack")) (set #ok 1) ) ( (if (patmatch "ReqAttacK" (fileonly #dest)) ( (if (= 2 (exists #dest)) (set #ok 1) ) ) ) ) ) ) ) (set @default-dest #dest) ) ) ) ) ;*************************************************************************** ;* * ;* P R O G R A M * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_PROG #what)) ( (copyfiles (prompt #MSG_COPY_PROG) (source "ReqAttack") (dest #dest) (infos) (help #MSG_NOHELP) (confirm) ) (tooltype (dest (tackon #dest "ReqAttack")) (settooltype "HOMEDIR" #dest) ) (if (= 1 (exists "SYS:WBStartup/ReqAttack")) (copyfiles (prompt #MSG_COPY_PROG) (source "ReqAttack") (dest "SYS:WBStartup") (help #MSG_NOHELP) (confirm) ) ) (if (= 0 (exists "ENVARC:ReqAttack.prefs")) ( (copyfiles (prompt (#MSG_COPY_CONFIG "ENVARC:")) (source "ReqAttack.prefs") (dest "ENVARC:") (help #MSG_NOHELP) (confirm) ) (copyfiles (prompt (#MSG_COPY_CONFIG "ENV:")) (source "ENVARC:ReqAttack.prefs") (dest "ENV:") (help #MSG_NOHELP) (confirm) ) ) ) ) ) ;*************************************************************************** ;* * ;* T O O L S * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_TOOLS #what)) ( (copyfiles (prompt #MSG_COPY_TOOLS) (source "Tools") (dest (tackon #dest "Tools")) (all) (infos) (help #MSG_NOHELP) (confirm) ) (copyfiles (source "Tools.info") (dest #dest) ) ) ) ;*************************************************************************** ;* * ;* D O C S * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_DOCS #what)) ( (run ("delete \"%s/Docs/#?\" QUIET >NIL:" #dest)) (set #defdoclang 0) (if (= "deutsch" @language) (set #defdoclang 1)) (set #doclang (askchoice (prompt #MSG_DOCLANG) (choices #MSG_DOC_ENGLISH #MSG_DOC_GERMAN) (default #defdoclang) (help #MSG_NOHELP) ) ) (set #docsource (cat "Docs/" (select #doclang "English" "Deutsch") ) ) (copyfiles (prompt #MSG_COPY_DOCS) (source #docsource) (dest (tackon #dest "Docs")) (all) (infos) (help #MSG_NOHELP) (confirm) ) (copyfiles (source "Docs.info") (dest #dest) ) ) ) ;*************************************************************************** ;* * ;* B U T T O N S * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_BUTTONS #what)) ( (copyfiles (prompt #MSG_COPY_BUTTONS) (source "Buttons") (dest (tackon #dest "Buttons")) (all) (infos) (help #MSG_NOHELP) (confirm) ) (copyfiles (source "Buttons.info") (dest #dest) ) ) ) ;*************************************************************************** ;* * ;* B R U S H E S * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_BRUSHES #what)) ( (copyfiles (prompt #MSG_COPY_BRUSHES) (source "Logos") (dest (tackon #dest "Logos")) (all) (infos) (help #MSG_NOHELP) (confirm) ) (copyfiles (source "Logos.info") (dest #dest) ) ) ) ;*************************************************************************** ;* * ;* A N I M B R U S H E S * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_ANIMBRUSHES #what)) ( (copyfiles (prompt #MSG_COPY_ANIMBRUSHES) (source "AnimLogos") (dest (tackon #dest "AnimLogos")) (all) (infos) (help #MSG_NOHELP) (confirm) ) (copyfiles (source "AnimLogos.info") (dest #dest) ) ) ) ;*************************************************************************** ;* * ;* P A T T E R N S * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_PATTERNS #what)) ( (copyfiles (prompt #MSG_COPY_PATTERNS) (source "Patterns") (dest (tackon #dest "Patterns")) (all) (infos) (help #MSG_NOHELP) (confirm) ) (copyfiles (source "Patterns.info") (dest #dest) ) ) ) ;*************************************************************************** ;* * ;* D A T A T Y P E S * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_BRUSHDT #what)) ( (copylib (prompt #MSG_COPY_BRUSHDT) (source "DataTypes/Classes/rabrush.datatype") (dest "SYS:classes/datatypes") (confirm) (help #MSG_NOHELP) ) (copyfiles (prompt #MSG_COPY_BRUSHDTDESC) (source "DataTypes/Devs/RABrush") (dest "DEVS:Datatypes") (infos) (noposition) (confirm) (help #MSG_NOHELP) ) ) ) (if (<> 0 (bitand #WHAT_ANIMBRUSHDT #what)) ( (copylib (prompt #MSG_COPY_ANIMBRUSHDT) (source "DataTypes/Classes/raanimbrush.datatype") (dest "SYS:classes/datatypes") (confirm) (help #MSG_NOHELP) ) (copyfiles (prompt #MSG_COPY_ANIMBRUSHDTDESC) (source "DataTypes/Devs/RAAnimBrush") (dest "DEVS:Datatypes") (infos) (noposition) (confirm) (help #MSG_NOHELP) ) ) ) ;*************************************************************************** ;* * ;* C Y R E Q * ;* * ;*************************************************************************** (if (<> 0 (bitand #WHAT_CYREQ #what)) ( (set #actversion 0) (set #installversion (getversion "Tools/CyReq")) (if (= 1 (exists ("C:CyReq"))) (set #actversion (getversion "SYS:c/CyReq")) ) (if (> #installversion #actversion) ( (copyfiles (prompt #MSG_COPY_CYREQ) (source "Tools/CyReq") (dest "SYS:c") (help #MSG_NOHELP) (confirm) ) ) ) (if (<> 0 (run "installtools/checkprogstart S:Startup-Sequence CyReq")) ( (textfile (dest "T:cyreq_Start") (append (";** CyReq: Redirect EasyRequestArgs and AutoRequest to BuildReq, HandleReq, FreeReq\nC:CyReq\n;**")) (safe) ) (message #MSG_FA #MSG_FA2) (run "installtools/FileAttack T:cyreq_Start S:Startup-Sequence Backup S:Startup-Sequence.bak DefaultAfter #?SetPatch#?") (delete "T:cyreq_Start") ) ) ) ) ;*************************************************************************** ;* * ;* T H E E N D * ;* * ;*************************************************************************** (exit #MSG_DONE (quiet))